package Libs.Dados.Objetos
{
	import mx.collections.ArrayCollection;
	
	[RemoteClass(alias="Neturion.Dados.Agencia")]
	public class Agencia
	{
		private var _agenciaId:int;
        private var _pessoa:Libs.Dados.Objetos.Pessoa;
        private var _codigo:String;
        private var _numeroAgencia:String;
        private var _gerente:Libs.Dados.Objetos.Pessoa;
        private var _banco:Libs.Dados.Objetos.Banco;
        private var _listaContasBanco:ArrayCollection;
        private var _observacaoAgencia:String;
        private var _inicioVigenciaAgencia:Date;
        private var _fimVigenciaAgencia:Date;
        private var _neturionLog:Libs.Dados.Objetos.NeturionLog;
		
		public function Agencia()
		{
			this._listaContasBanco=new ArrayCollection();
		}
		
		public function get AgenciaId():int
        {
             return this._agenciaId; 
        }
		
		public function get Pessoa():Libs.Dados.Objetos.Pessoa
        {
             return this._pessoa; 
        }
		
		public function get Codigo():String
        {
             return this._codigo; 
        }
        
        public function get NumeroAgencia():String
        {
             return this._numeroAgencia; 
        }

        public function get Gerente():Libs.Dados.Objetos.Pessoa
        {
            return this._gerente; 
        }

        public function get Banco():Libs.Dados.Objetos.Banco
        {
            return this._banco; 
        }

        public function get ListaContasBanco():ArrayCollection
        {
             return this._listaContasBanco; 
        }
        
        public function get ObservacaoAgencia():String
        {
           return this._observacaoAgencia; 
		}
		
		public function get InicioVigenciaAgencia():Date
        {
        	var data:Date = null;
        	if (this._inicioVigenciaAgencia != null)
        	{
        		var dia:Number = _inicioVigenciaAgencia.dateUTC; 
	        	var mes:Number = _inicioVigenciaAgencia.monthUTC; 
	        	var ano:Number = _inicioVigenciaAgencia.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._inicioVigenciaAgencia = data;
		}
		
		public function get FimVigenciaAgencia():Date
        {
        	var data:Date = null;
        	if (this._fimVigenciaAgencia != null)
        	{
        		var dia:Number = _fimVigenciaAgencia.dateUTC; 
	        	var mes:Number = _fimVigenciaAgencia.monthUTC; 
	        	var ano:Number = _fimVigenciaAgencia.fullYearUTC;
	        	data = new Date(ano,mes,dia);
        	}
            return this._fimVigenciaAgencia = data;
		}
		
		public function get NeturionLog():Libs.Dados.Objetos.NeturionLog
        {
           return this._neturionLog;
		}
///////////////sets///////////////   
		public function set AgenciaId(value:int):void
        {
              this._agenciaId=value;
        }
     
        public function set Pessoa(value:Libs.Dados.Objetos.Pessoa):void
        {
              this._pessoa=value;
        }
        
        public function set Codigo(value:String):void
        {
              this._codigo=value;
        }
        
        public function set NumeroAgencia(value:String):void
        {
              this._numeroAgencia=value;
        }

        public function set Gerente(value:Libs.Dados.Objetos.Pessoa):void
        {
             this._gerente=value; 
        }

        public function set Banco(value:Libs.Dados.Objetos.Banco):void
        {
             this._banco=value; 
        }

        public function set ListaContasBanco(value:ArrayCollection):void 
        {
              this._listaContasBanco=value; 
        }
        
        public function set ObservacaoAgencia(value:String):void
        {
           this._observacaoAgencia=value; 
		}
		
		public function set InicioVigenciaAgencia(value:Date):void
        {
           this._inicioVigenciaAgencia=value; 
		}
		
		public function set FimVigenciaAgencia(value:Date):void
        {
           this._fimVigenciaAgencia=value; 
		}
		
		public function set NeturionLog(value:Libs.Dados.Objetos.NeturionLog):void
        {
           this._neturionLog=value;
		} 
	}
}